home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 3: CDPD 3
/
Almathera Ten on Ten - Disc 3: CDPD3.iso
/
scope
/
126-150
/
scopedisk148
/
powerplatform
/
docs
/
powerplatform10.doc
< prev
next >
Wrap
Text File
|
1995-03-19
|
78KB
|
1,676 lines
PowerPlatform
User's Guide
Release 1.0
August 1990
Copyright © 1990 Martin C. Warnett
PowerPlatform 1.0 Page 2
__II__nn__tt__rr__oo__dd__uu__cc__tt__ii__oo__nn
At first glance PowerPlatform may appear to be just another
directory utility program. Typically a directory utility program will
have one or more directory windows and a bunch of gadgets to help you
move around the directory tree. It would also have an array of
function buttons that enable you to do such things as copy, delete
and rename files. PowerPlatform has all these features.
Typically a directory utility will give you the ability to
define some of these function buttons yourself. For example it might
allow you to change the Edit function button to invoke the editor of
your choice. PowerPlatform has this feature too.
But typically directory utilities don't give you control over
much else. PowerPlatform does. PowerPlatform has only two built in
functions. For example it does not have it's own copy function. This
may seem strange at first but using an ARexx EXEC you define the
PowerPlatform functions. You define the name of the button, where it
goes on the screen and more importantly what it does. You can run any
AmigaDOS command, CLI program, WorkBench program or ARexx EXEC from
within PowerPlatform.
The default PowerPlatform ARexx configuration EXEC, (referred to
as the profile), simply defines the Copy function as using the
AmigaDOS copy command, after all a copy function is simply a copy
function, right? Not necessarily. For example, I have seen many
debates rage on bulletin boards and online networks over whether or
not the copy command should copy the original file's creation date.
The AmigaDOS copy command allows you to create the new file with
either the current date or the original date. Because PowerPlatform
allows you to specify the actual command used to copy a file, you can
do it which ever way you want. If you would prefer to use another
copy utility, maybe the ARP copy command, go ahead. Do you need a
function that AmigaDOS does not provide, say a move command? Use you
favorite move utility from within PowerPlatform. Don't have one? Then
build your own using ARexx. The full power of ARexx is available to
you from within PowerPlatform.
Maybe you would like to launch your favorite WorkBench
applications from within PowerPlatform. No problem! You can easily
add them to the PowerPlatform menu bar where they are instantly
available. No more digging through directories trying to find that
paint program or game.
The "Power" in PowerPlatform actually comes from the ability to
configure the way it works using ARexx. This gives you tremendous
power to create your own custom environment. However it also means
that PowerPlatform does not run "off the shelf". Unlike other
products you will have to read this manual to effectively use
PowerPlatform. You will also have to take the time to customize it
and develop your own ARexx EXEC's to take full advantage of it's
power. Take the time to read this manual and fully explore
PowerPlatform's features.
I would very much like to hear your comments about both
PowerPlatform and this manual. You can contact me as follows:
PowerPlatform 1.0 Page 3
Martin C. Warnett.
2407 25th Avenue
San Francisco
CA 94116
BIX: mwarnett
Compuserve: 70431,3565
Please remember that PowerPlatform is shareware. If you continue
to use the product beyond the 30 day trial period please register it.
Full instructions on how to register PowerPlatform can be found at
the end of this manual. Please feel free to pass this version of
PowerPlatform on to your friends and favorite bulletin boards.
However please only distribute the entire package exactly as you
received it.
I hope you find PowerPlatform useful. Please report any problems
you encounter or any ideas you have for future enhancements to me
either by email or regular mail.
__PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____II__nn__ss__tt__aa__ll__ll__aa__tt__ii__oo__nn
Before you install PowerPlatform, make sure that you have
installed ARexx on your system. ARexx must be running before you
start PowerPlatform. You may want to consider putting ARexx in your
startup-sequence if it is not already there. For more information on
installing ARexx, consult the documentation that came with it.
Installation of PowerPlatform is very simple, just copy the
PowerPlatform and PowerPlatform.info files to the directory of your
choice. Copy the PowerPlatform EXEC's, the files that end in .APP, to
your REXX: directory. You can start PowerPlatform from your
Startup-Sequence if you like. PowerPlatform will detach itself and
allow the startup shell to close. PowerPlatform needs only the
standard 4000 byte stack.
A special note for AmigaDOS 2.0 users, you might want to leave
PowerPlatform out on your WorkBench so that it will always be
available. Just simply select the PowerPlatform icon and then select
the leave out item from the Icons menu.
Before running PowerPlatform edit the Profile.APP file which you
should have copied to your REXX: directory. PowerPlatform looks for
this file when it starts up and uses it to set up your PowerPlatform
configuration. The version of Profile.APP shipped with PowerPlatform
is fairly generic and should run on most systems. You will
undoubtedly be changing the profile as you become more familiar with
the program. Remember that the profile is an ARexx EXEC so it helps
if you are familiar with ARexx syntax. For now just quickly check
through the following.
The first section of the file defines the devices PowerPlatform
will use. These devices will normally include all your disks, Hard
PowerPlatform 1.0 Page 4
disks, floppy disks and RAM disks. Remove any devices not present on
your system, and if you like add new ones. Full information on how to
do this can be found in the command reference section of this manual.
However the syntax should be fairly obvious from the examples in the
profile.
The menu bar definitions come next. For now you can probably
leave these as they are. The final section contains the function
button definitions. Take a look at the definition for the edit
function. It is probably a good idea to change it now to use your
favorite editor.
This should be enough to get you up and running. Now you can use
PowerPlatform itself to continue the customization process. Please be
sure to read the configuration section of this manual before you make
any further changes to your profile.
It is possible that you might experience some problems with the
standard profile because you may have removed some of the programs it
references from your system or you may not have the required
directories on your path. You will also find references to some
commercial programs you may not have purchased. Please remember that
this is just a sample profile designed to get you up and running as
quickly as possible. The customization process is discussed in detail
later in this manual.
__UU__ss__ii__nn__gg____PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm
When PowerPlatform starts up it opens up a window, by default on
your WorkBench, but you can also get PowerPlatform to open it's
window on a custom hires or interlaced screen. The directory area is
on the left side of the window, the function area is on the right
side and the disk information area is at the bottom. Lets look at
each of these areas as well as the PowerPlatform menu bar. First the
directory and function areas.
TThhee PPoowweerrPPllaattffoorrmm DDiirreeccttoorryy aanndd FFuunnccttiioonn AArreeaass
The following explanation is going to make a lot more sense if
you have PowerPlatform running as you read it. If you have not
already done so start PowerPlatform by double clicking on it's icon
or by typing PowerPlatform on the command line. You can invoke
PowerPlatform from either the WorkBench or the command line.
On the left side of the directory area are the device gadgets.
As you saw in the previous section of this manual, you define the
actual devices in your profile. Clicking on one of the device gadgets
makes the selected device the active device. The root directory of
that device will be displayed.
PowerPlatform maintains two directories, the source directory
and the target directory. Only one of these directories is displayed
at a time. The area title clearly indicates which one. The directory
display itself lists all files and subdirectories in the current
PowerPlatform 1.0 Page 5
directory. You can identify which directory entries are files and
which are subdirectories by the color. By default PowerPlatform
displays the size of each file in bytes to the right of the file
name. You can select to display the file size in blocks instead or
display the creation date or time. Only the name of the
subdirectories are displayed.
You can switch between the two directories by clicking in the
S<>T gadget. You can refresh the current directory display by
clicking on the directory title gadget, i.e. "Source Directory
Window". You can go down the directory tree by simply double
clicking on any of the subdirectories displayed. You can move back
up to the parent directory by clicking on the PAR< gadget. You can
move back up to the root directory by clicking on the device gadget.
Hopefully all the above is fairly obvious and with a little
practice should become very easy to master. There are a couple of
other gadgets that may need a little more explanation. If you
currently have the source directory displayed you will see two
gadgets, one marked <T and the other marked >T. If the target
directory is displayed they will be <S and >S. These gadgets are a
quick way of making the source directory and the target directory the
same. The following assumes that the source directory is currently
displayed. By clicking on >T, the Target directory is now the same
as the source directory. By clicking on <T, the source directory is
the same as the target directory. The current target directory is
always displayed in a string gadget at the bottom of the directory
area.
The three arrows at the top left of the directory area are used
to manipulate the directory stack. You can always push the current
directory onto the stack and pull it off at any time. Click on the up
button to push the current directory onto the stack. Now move to
another directory and click on the down button to pull the directory
off of the stack. You should be back where you started from. Go to
another directory and click on the two headed arrow. The current
directory and the stack directory are exchanged. Keep clicking on
this gadget to alternate between the two directories. The directory
stack is only one level deep, i.e. as you push a new directory onto
the stack the old value of the stack is lost, however pulling the
directory off of the stack does not remove it from the stack. There
are separate source and target directory stacks.
Directory entries, (files and subdirectories), are selected by
simply clicking on them. When you select an entry the color of the
text and background switch. For example if you have set up
PowerPlatform so that the background is white and the text is black,
the background of the selected entry becomes black and the name is
displayed in white. If you select an entry in error simply click on
it again to deselect it.
If you double click on a directory entry one of several things
could happen. If you double click on a subdirectory you will go into
that subdirectory and it's contents will be displayed. If you double
click on a file the results will depend on how you have configured
PowerPlatform. You can set up PowerPlatform so that when you double
click on a file a program is invoked and passed the file name as a
PowerPlatform 1.0 Page 6
parameter. You can associate different file types with different
programs. For example you can set up PowerPlatform so that if you
select a file that ends in .c your favorite text editor is started,
files ending in .word will start your favorite word processor etc.
All this is covered in more detail in the configuration section of
this manual. If you double click on a file that has no associated
program, an error requester will be displayed.
One final gadget needs to be covered, that is the little check
mark at the bottom of the directory area. This gadgets function will
become apparent as you follow this simple example. By now you should
know how to switch between the source and target directories and how
to move up and down the directory tree. We are now going to copy a
file. Make sure the target directory is displayed and select the
required device. For this practice session it is best to select the
RAM: device if you have one. Now switch to the source directory and
select the file you want to copy by clicking on it. Now click on the
Copy function. You have now copied the file. You can switch to the
target directory to verify this if you like.
If you were watching carefully you might have noticed that the
current target directory, RAM: in our example was displayed at the
bottom of the directory area. This is always the case regardless of
which directory is currently active. Suppose you wanted to copy a
file to a new name. You can click on this gadget and enter the new
name. For example click anywhere in this gadget and the cursor will
appear, now type in the new name at the end of the target directory
and select a file and the copy button again. You can enter the
complete target file specification in the target string gadget if you
prefer, or you can move around the target directory display and
PowerPlatform will construct the target name for you. Lets copy it
one more time.
Supposing you want to copy the Profile.APP file that came with
PowerPlatform and want to call it Profile.APP.COPY. Select the source
directory, target directory and file just as you did before. Now
select the check mark gadget. What happened? the name of the file you
selected has been added to the target directory name. Now simply
click on the target name gadget as you did before and add the COPY
extension. Finally hit the copy button. The little check mark gadget
can save you a lot of typing.
We have covered a lot of ground in this short section. By now
you should know the PowerPlatform basics. We have discovered how to
select the active directory, how to manoeuvre through the directory
tree, how to select files and how to copy a file. Now that you can
copy a file you can easily rename it, erase it etc. Take a break from
the manual at this point and play around with PowerPlatform to become
more familiar with the way it works. It should not take too long.
Don't forget however that you are playing with your real files. You
might want to start by copying some files to your RAM: disk and then
experimenting with the other functions.
TThhee PPoowweerrPPllaattffoorrmm DDiisskk IInnffoorrmmaattiioonn AArreeaa
You should now be familiar with the first two areas of the
PowerPlatform 1.0 Page 7
PowerPlatform window, the directory area and the function area. The
last area is the disk information area and it is displayed at the
bottom of the window. It simply displays the current source and
target volume names along with the amount of space used and
available, (in bytes), for each device.
TThhee PPoowweerrPPllaattffoorrmm MMeennuu BBaarr
You may remember that you can add you own menus to the
PowerPlatform menu bar. The PowerPlatform sample profile adds some
additional menus. If you have not already done so start up
PowerPlatform and run quickly through the menu bar. Just how you
define your own menus is described in the configuration section of
this manual. However, regardless of whether or not you define your
own menus, PowerPlatform always provides the following three menus:
Project: This menu contains three items, About displays
information about PowerPlatform, Screen changes the
PowerPlatform display and Quit exits the program.
When reporting a problem with PowerPlatform you must
always provide the PowerPlatform release you are
using. You can get the release number by selecting
the about menu item. There are three screen options
currently supported, WorkBench opens the
PowerPlatform window on the WorkBench screen, Hires
opens a custom HiRes screen and interlace opens a
custom HiRes-Interlaced screen. You set up your
default screen mode in your profile and you can
change it at any time using the screen menu.
Additional screen options will be supported in the
next release of PowerPlatform.
Directory: This menu contains many different directory display
options. By default PowerPlatform displays the file
name and file size in bytes. You can change this by
selecting the appropriate item from this menu. I will
not describe all the options here because they should
be self explanatory. Experiment! The last item on
the Directory menu, the search pattern, brings up a
requester that you can use to limit the files
displayed. By default PowerPlatform displays all the
files and subdirectories in the current directory.
You can use any valid AmigaDOS wild card characters
to control which files are displayed. Note that the
search pattern option only effects which FILES are
displayed. The subdirectories are always displayed.
Trace: This menu controls ARexx trace functions. If you are
familiar with ARexx you should recognize the menu
items. Please refer to your ARexx manual for full
information. Basically tco opens the trace window and
tcc closes it. ts starts interactive tracing and te
ends it. Tracing is a very powerful part of ARexx. It
PowerPlatform 1.0 Page 8
enables you to quickly and easily debug your ARexx
EXEC;s.
That's it for the standard PowerPlatform menus. Be sure to read
the configuration section of this manual for information on how you
can add your own menus.
__PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____CC__oo__nn__ff__ii__gg__uu__rr__aa__tt__ii__oo__nn
PowerPlatform can be configured for just about any purpose. When
PowerPlatform is started it looks for a file called Profile.APP in
your REXX: directory. This file contains the commands that configure
PowerPlatform. PowerPlatform is shipped with a basic profile that
includes the standard AmigaDOS commands and some common programs.
Any of the PowerPlatform commands listed in the command
reference section of this manual can be included in your profile.
Remember that the PowerPlatform profile is just another ARexx EXEC so
you can also include standard AmigaDOS commands or any other
utilities you require.
The following section describes the sample profile in detail. It
should give you a good idea of how to set up your own profile. You
might want to print off a copy of the Profile.APP file to refer to as
you read this section. It is also a good idea to have PowerPlatform
running so that you can see what effects the profile has on
PowerPlatform's window and functions.
Before changing your profile be sure to make a backup copy. If
you make an error in your profile PowerPlatform may display an error
and terminate. If you have a backup copy you can easily recover from
this situation.
/*************************************************************/
/* This is the sample Profile for PowerPlatform Release 1.0. */
/* */
/* ==> MCW 08/19/90 <== */
/* */
/* Copyright © 1990 Martin C. Warnett */
/*************************************************************/
trace off
'Options Bytes'
'Options WorkBench'
The REXX language requires that the first line of the EXEC
contain a comment. A comment is delimited by a /* */ pair, as in /* a
comment */. It does not have to be very fancy but you must have a
comment as the first non-blank line in your EXEC.
Following the comment is a trace statement. It is currently set
to off which means the EXEC will run normally. The ARexx trace
facility is a very powerful part of the language. When strange things
PowerPlatform 1.0 Page 9
start happening and you don't understand why it's time to turn
tracing on. Personally I prefer the interactive trace, just change
trace off to trace ?i to activate it. This is only a suggestion,
there are a wide variety of tracing options which are defined in your
ARexx manual.
The two options statements will ensure that PowerPlatform opens
on the WorkBench screen and that the directory display includes the
file size in bytes.
'DefineDevice HardDisk 1 SYS:'
'DefineDevice HardDisk 2 DH0:'
'DefineDevice FloppyDisk 3 DF0:'
'DefineDevice RamDisk 4 RAD:'
'DefineDevice RamDisk 5 RAM:'
'DefineDevice HardDisk 6 NET:'
'DefineDevice FloppyDisk 7 MSH:'
This next section defines the devices PowerPlatform will
recognize. Normally these will include all the disks in your system,
hard disks, floppy disks and ram disks. You can also define any other
devices you may have mounted.
If you look at the PowerPlatform window you will see the device
gadgets are arranged in a column on the left. The numbers in the
above DefineDevice commands simply control the position within the
device column. The device type simply controls which gadget
PowerPlatform uses to display the device. So for example device DH0:
is the second device and the gadget displayed indicates that it is a
hard disk.
In the sample profile I include NET: which is the ParNet2 device
and MSH: which is the MessyDOS device. You can find both of these
programs on most bulletin boards. ParNet allows you to link two
Amigas together via their parallel ports. MessyDOS allows you to read
MS-DOS 720K floppy disks on your Amiga. You have full access to these
other devices from within PowerPlatform. You can copy files from one
Amiga to another and read and write MS-DOS disks too!
'CDSource RAM:'
'CDTarget RAM:'
These two commands just establish the default source and target
directories. The directory specification must include one of the
device names you defined earlier. For example:
CDSource DH0:Utilities.
When PowerPlatform starts it will initially display the source
directory. You can specify any device you want but if you specify a
large hard disk partition it may take longer for PowerPlatform to
initialize because it has to read the root directory of the device.
PowerPlatform 1.0 Page 10
'DefineConsole 1 CON:0/50/640/100/Console1'
'DefineConsole 2 CON:0/25/640/150/Console2'
'DefineConsole 3 CON:40/20/640/430/Console3'
These commands define console windows that can be used to view
the output of commands run from within PowerPlatform. You can run
commands in the background in which case you do not see any output
from the command. You will probably want to run the copy, rename
commands etc. in this way. You will want to see the output of other
commands however and some will require you to enter data. In this
case you can use one of your console definitions. You will see how
you direct the output of a command to a particular console in the
next section.
The advantage to defining multiple consoles is that you can size
the console to the expected output of the command. You probably do
not want to obscure the entire screen for a command that only outputs
1 line of text. You can use any console handler you like, (NEWCON:,
Conman etc.), just make sure that your definition is valid for the
console handler you are using as PowerPlatform cannot validate it.
'DefineMenu Utilities'
'DefineItem WB Calculator SYS:Tools/Calculator'
'DefineItem WB KEY=M MeMacs SYS:Tools/MeMacs'
'DefineItem WB Clock SYS:Utilities/Clock'
'DefineItem WB Say SYS:Utilities/Say'
These commands are defining the PowerPlatform menu bar. You can
add up to five additional menus to the PowerPlatform menu bar. Here
we show just one additional menu that has 4 items. The first item is
the standard Amiga calculator. The WB instructs PowerPlatform to run
this program as if it were run from the WorkBench. You can also
specify CLI, which means run it as if it were run from the command
line and ARexx which means that the program is an ARexx EXEC.
The second item includes a keyboard alternative. This means that
you can run the program by selecting it from the menu bar or by
simply pressing the right Amiga key and the letter M.
'DefineExt CLI Run CDSource ToWB C DME &sf'
'DefineExt CLI Run CDSource ToWB H DME &sf'
'DefineExt ARexx rexx &sf'
'DefineExt ARexx APP &sf'
These commands associate files with programs. When you double
click on the file PowerPlatform will start the specified program and
pass it the name of the file. This is just a shortcut, it saves you
having to move the mouse after selecting the file to select the
appropriate function button.
It's starting to get a little complicated here as PowerPlatform
provides many options for you to control program execution. The first
PowerPlatform 1.0 Page 11
command is associating files with an extension of C, (i.e. they end
in .c), with the editor DME. The CLI option instructs PowerPlatform
to invoke DME as if it was run from the command line.
By default PowerPlatform waits for a command to complete before
it allows you to select another function. The Run option instructs
PowerPlatform to invoke it as a separate task. This is exactly the
same as using the AmigaDOS Run command. If you were to execute DME
from the command line it would tie up the command line shell until
you quit DME. If you entered Run DME at the command line it would
free up the shell immediately.
CDSource instructs PowerPlatform to make the current source
directory the current directory for the DME task. There are many
reasons you might want to do this when executing a program. For
example the program may look for certain files in the current
directory. In this case it is so that when we bring up the file
requester in DME, it will default to the current PowerPlatform
directory. This can save you a few steps if you have related files
that you might need in this directory.
ToWB is only applicable if you have started PowerPlatform on a
custom screen. It will not hurt if you have started PowerPlatform
from the WorkBench and use this option, it just does not serve any
purpose. PowerPlatform will make the WorkBench the active screen
before starting DME so that the DME window becomes the active
window. This saves you having to manually switch screens to find the
DME window.
C is the file extension to associate DME with. DME is the
program name. In this case it is on the path so we do not need to
specify the directory, but if it were not you could specify the full
name here. The &SF is a place marker that tells PowerPlatform to put
the selected file at this location in the command line when executing
the program. So in this case when you double click on a file with an
extension of C, PowerPlatform will construct a command line in the
form of DME filename.c.
The third command associates files with an extension of rexx
with... what? The actual file itself. Remember that &SF represents
the selected file name and in this case it's the only thing in the
command line parameter. This command is instructing PowerPlatform to
execute the selected file. The ARexx option indicates to
PowerPlatform that it is an ARexx EXEC.
The general syntax for all PowerPlatform commands is the command
name followed by any command options you wish to specify, followed by
the required parameters. The command reference section of this manual
includes a complete list of all PowerPlatform commands, their options
and required parameters.
'DefineFunction 1 TagAll TagAll'
'DefineFunction 2 Reset Reset'
'DefineFunction Run CDSource 3 Shell NewShell',
'CON:0/50/640/100/AmigaShell'
'DefineFunction Sleep TargetRefresh 6 Copy',
PowerPlatform 1.0 Page 12
'copy FROM &sf TO &tf COM'
'DefineFunction Sleep TargetRefresh 7 CopyAll',
'copy FROM &sf TO &tf COM ALL'
'DefineFunction Sleep Confirm SourceRefresh 8 Erase',
'delete &sf'
'DefineFunction Sleep Confirm SourceRefresh 9 EraseAll',
'delete &sf ALL'
'DefineFunction Sleep SourceRefresh TargetRefresh 10 Rename',
'rename FROM &sf TO &tf'
'DefineFunction TargetRefresh 11 MakeDir Makedir &tf'
'DefineFunction Run 16 More more &sf'
'DefineFunction Run NoSelect 17 Edit DME &sf'
'DefineFunction Sleep Console=1 TargetRefresh CLI 21 Format',
'FORMAT DRIVE &td NAME NEW NOICONS'
'DefineFunction Sleep Console=1 TargetRefresh CLI 22 DiskCopy',
'DISKCOPY FROM &sd TO &td'
'DefineFunction 26 Viewer SuperView &sf'
'DefineFunction CDSource NoQuote 31 Do &sf'
'DefineFunction CDSource 32 Run Run &sf'
'DefineFunction CDSource 33 Execute Execute &sf'
'DefineFunction Console=2 CDSource SourceRefresh ARexx 34',
'Extract Extract &SF'
You were introduced to some of the many options PowerPlatform
supports when we discussed the DefineMenu and DefineExt commands
above. Now we are going to cover the DefineFunction command. This is
the most important PowerPlatform command, it defines the function
buttons. Many of the options are the same so the above statements
taken from the sample profile should already be familiar.
The first statement is defining function button 1. Function
buttons are numbered in the same way that devices were numbered. The
function number simply determines where PowerPlatform will display
the function button.
Following the function number is the function button label, and
following that the command that will be executed.
The first command is TagAll. This is a built in PowerPlatform
command. There are only two built in commands TagAll and Reset.
TagAll will select all the directory entries in the current source
directory. Reset will deselect any selected entries.
Function number 6 defines the copy command. Notice that this
definition is split over two lines. This is for readability purposes
only. You should refer to your ARexx manual for details on how to
continue Arexx commands.
There are a couple of new options introduced for the first time.
As mentioned earlier PowerPlatform will wait until the command
completes before it will process further commands. The sleep option
instructs PowerPlatform to display the standard intuition busy
pointer until the command completes.
TargetRefresh instructs PowerPlatform to refresh the target
directory when the command completes. As the copy command copies the
PowerPlatform 1.0 Page 13
selected files to the target directory this makes a lot of sense.
Note that if the target directory is currently the active directory,
the directory will be refreshed immediately. If the source directory
is active, the target directory will be refreshed when it becomes the
active directory.
The &TF in the copy command performs the same purpose as &SF, it
tells PowerPlatform where to insert the target file specification
when constructing the command line. The command is specified as 'COPY
FROM &SF TO &TF COM'. If you take a look at the AmigaDOS reference
manual you will see that this command is the standard AmigaDOS copy
command. You can change the copy command options as necessary.
Function 8 defines the erase command. This introduces another
new option, Confirm. This instructs PowerPlatform to display a
requester asking you to confirm the command. This is simply a
safeguard that should be used for potentially destructive commands.
Function 17 defines the Edit command. The editor in this case is
the public domain DME but you can change this definition to reference
your favorite editor. Normally if you select a function button but
you have not selected a file in the source directory, the function is
ignored. This makes sense for most commands, you cannot copy a file
without selecting one first. But you might want to invoke an editor
without selecting a file. The NoSelect option allows you to do
exactly this.
Function 21 defines the format command. This command requires
user input so a console is referenced so that you can see the output
from the command and respond to it's prompts. The console was defined
earlier using the DefineConsole command. The format command also uses
the &TD place marker. PowerPlatform will replace &TD with the
current target device, not the full file name.
One final new option and we're done! By default PowerPlatform
puts double quotes around the file name when it is formatting the
command line. The double quotes are required when the file name
contains special characters such as a space. Normally it does no harm
to add quotes all the time, but there are a few programs that do not
handle quotes correctly. The NoQuotes option instructs PowerPlatform
not to put quotes around the file name.
Hopefully the sample PowerPlatform profile now makes some sense.
The complete syntax of all the PowerPlatform commands can be found in
the command reference section of this manual.
Remember that if after altering your profile things do not work
as expected you can always activate the ARexx trace facility to see
exactly what is going on. Simply select the tco menu item to open the
ARexx tracing window and then select ts to activate tracing. Each
command will be displayed before it is executed and you will see the
actual command line that PowerPlatform has formatted. The
PowerPlatform place holders will have been replaced by the real file
name. You should be able to easily debug your profile.
PowerPlatform 1.0 Page 14
__AA__dd__vv__aa__nn__cc__ee__dd____PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____CC__oo__nn__ff__ii__gg__uu__rr__aa__tt__ii__oo__nn
One of the more unusual features of PowerPlatform is that you
can redefine the function buttons at any time. The function area can
get really cluttered if you fill it with function buttons and it can
take time to find the one you are looking for.
Another approach is to set up groups of function buttons. Maybe
you could define a utility group, a group of word processing
functions, a group of development functions, a group of graphics
functions etc. Then you can add a menu or define a function button to
execute an ARexx EXEC to change to another group at any time.
In my own profile I have defined a Function menu. When I need
to do some word processing I select the appropriate function menu
item and all my buttons are immediately redefined. My word
processing tools are instantly available. When it's time to do some
graphics work, select the graphics menu item and a whole new set of
function buttons appear.
Using this technique you can have a virtually unlimited number
of function buttons defined and by grouping them logically you never
have trouble finding the one you want.
To change your function button definitions just write an ARexx
EXEC and issue the ClearFunctions command to remove your existing
function button definitions, define your new ones and then issue the
ReDrawFunctions command to display the new buttons.
As always you can include any PowerPlatform command in your
EXEC. Another useful one in this situation is the CDSource command to
change the current PowerPlatform source directory. When you switch to
your word processing functions you might also want to switch to your
word processing directory.
This feature can be very powerful. Take some time to think about
how you can group your functions together and set up you function
buttons.
__WW__rr__ii__tt__ii__nn__gg____yy__oo__uu__rr____oo__ww__nn____PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____EE__XX__EE__CC__''__ss
Now that you have successfully configured PowerPlatform using
ARexx you're ready for the next step, writing your own EXEC's to run
under PowerPlatform. You can use ARexx for practically anything.
A good example is the Extract.APP EXEC shipped with
PowerPlatform. This EXEC will decompress a file that has been
previously compressed using the LHARC, ZOO, ZIP, ARC or UUENCODE
programs. Obviously you can only run this EXEC on your system if you
have installed these programs.
To use it, you must first define a function button similar to
this:
'DefineFunction ARexx Console=2 10 Extract Extract &SF'
PowerPlatform 1.0 Page 15
By now you should realize that this command will define function
button number 10. PowerPlatform will label the button "Extract".
When you click on the button PowerPlatform will open the specified
console, and execute the ARexx program using the command line
"Extract filename".
parse upper arg fname
if fname = '' then do
'Message No filename Specified.'
'Beep'
return
end
The first thing this EXEC does is to get the file name passed on
the command line. If there is no file name it issues the
PowerPlatform Message command to display a message in the
PowerPlatform title bar, beeps and terminates. Note that this is not
strictly necessary às PowerPlatform will never execute this EXEC
unless a filename was selected.
ftype = substr(fname, lastpos(".", fname) +1)
if ftype = "ARC" then do
address command 'ARC <* e' fname
return
end
Next we will strip off the file extension so that we can
determine the file format and therefore which program to invoke. The
above statements show how the ARC program is executed. Once the file
has been decompressed the EXEC terminates. The other file formats are
handled in a similar manner but they are not shown here.
'Message Unrecognized file type.'
'Beep'
return 0
If the file type is not recognized then the above statements
will be executed. Again we will display an error message in the
PowerPlatform title bar, sound the alarm and terminate. We could have
returned with a non zero return code, in which case PowerPlatform
will display a requester with the return code. This is another way of
indicating that an error has occurred.
Be sure to take a look at the full Extract.APP file which you
should have copied to your REXX: directory when you installed
PowerPlatform.
If some of the above statements do not make sense you should
find the answers in your ARexx manual.
__PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____CC__oo__mm__mm__aa__nn__dd____RR__ee__ff__ee__rr__ee__nn__cc__ee
PowerPlatform 1.0 Page 16
The PowerPlatform command format is:
Command Options Parameters
In this section of the manual all commands are listed
alphabetically by command name. Required parameters are specified in
square brackets. When coding the commands you must replace the
descriptive text in square brackets with an appropriate value. Do not
code the square brackets.
Options are coded within braces and are presented after the
actual command description. It you specify an option it must be
placed after the command name and before the required parameters.
Options are presented in mixed case for readability. PowerPlatform
commands are not case sensitive and you may enter them however you
wish. If the options are separated by spaces then you may code as
many of them as you need. If the options are separated by | then you
must pick only one. If an option is underlined then this is the
default.
The following PowerPlatform commands are available. Any of these
commands may be included in your PowerPlatform profile. Most commands
can also be included in any PowerPlatform ARexx EXEC you write.
Beep
The Beep command will sound an audible alarm. It can
be used at any time but normally it would be used to
signal an error or exceptional condition.
CDSource [directory]
This command will change the current PowerPlatform
source directory. The directory specification must
always start with a device name, one previously
defined using the DefineDevice command.
CDTarget [directory]
This command will change the current PowerPlatform
target directory. The directory specification must
always start with a device name, one previously
defined using the DefineDevice command.
ClearFunctions
This command will remove all function button
definitions. It is designed to be used when you wish
to change the assignments of the function buttons.
If you attempt to define a function button that has
already been defined, (i.e. the function number is
PowerPlatform 1.0 Page 17
already in use), PowerPlatform will display an error
requester. Use this function to clear existing
definitions before defining new ones.
DefineColor [pen number] [red] [green] [blue]
This command will change the colors of the
PowerPlatform screen. This command is only effective
if you have opened PowerPlatform on a custom screen.
It will be ignored if you have opened PowerPlatform
on the WorkBench.
The PowerPlatform screen is an eight color screen so
the pen number must be in the range 0-7. The red,
green and blue values must be in the range 0-15 and
indicate the amount of red, green or blue in the
required color.
By default PowerPlatform will use your WorkBench
colors as the first four colors of it's custom
screen, (pens 0-3).
DefineConsole [console number] [console definition]
This command is used to define a console that can
then be used for command input and output. The
console number must be in the range 1-10 and will
identify the console when it is later referenced.
The console definition must conform to the
requirements of your console manager, AmigaDOS,
ConMan etc.
DefineDevice [device number] [device name]
{ _H_a_r_d_D_i_s_k | FloppyDisk | RAMDisk}
This command is used to define the devices
PowerPlatform will display in the directory area of
it's window. PowerPlatform includes a column of
gadgets on the left side of it's window. You can
then click on these gadgets to select the source and
target devices.
Device number identifies the position of the gadget,
1 is the top gadget and 20 is the bottom. There is
no guarantee that the devices will be visible as
PowerPlatform will only display as many devices as
will fit in it's window and ignore the rest.
Enlarging the window will cause additional device
gadgets to be displayed.
Device name identifies the device. Currently
PowerPlatform limits the device name to 4 characters
including the colon, e.g. DH0:, DF1: RAM:. If your
device name is longer than four characters you
PowerPlatform 1.0 Page 18
should use the AmigaDOS assign statement to define a
4 character name for the device and use that.
The device type option can be one of the three
specified values. This parameter controls which
gadget PowerPlatform uses to represent the device.
It serves no other purpose and you can use whichever
gadget you like, i.e. you don't have to use the
HardDisk gadget for your hard disk.
DefineExt [file extension] [command]
[ARexx | _C_L_I | WB}
{CDPath | CDSource | CDTarget}
{SwitchWB | ToWB}
{Confirm Console= NoQuote Run Sleep SourceRefresh
Stack= TargetRefresh}
This command is used to associate a file extension
with a program. Then when you double click on a file
with the specified extension that program will be
invoked with the file name as a parameter.
The file extension is the last section of the
filename delimited by a period. You must not specify
the period just the extension.
The command identifies the program you want to
associate with the file extension. If the specified
program is not on your path then you must specify
the full path and file name.
Specify ARexx, CLI or WB to identify the type of
program you want to execute.
Refer to the DefineFunction command for a
description of the other options. You can include a
maximum of 25 DefineExt commands.
Example: 'DefineExt ToWB C dme &SF'
In the above example whenever you double click on a
file ending in .c the DME editor will be invoked
with the filename as a parameter. PowerPlatform will
switch to the WorkBench screen before starting the
program.
DefineFunction [function number] [function label] [function
command]
{ARexx | _C_L_I | WB}
{CDPath | CDSource | CDTarget}
{SwitchWB | ToWB}
{Confirm Console= NoQuote NoSelect Run Sleep
SourceRefresh Stack= TargetRefresh}
This PowerPlatform command defines each function
PowerPlatform 1.0 Page 19
button, where it displays, it's label and the
command that must be executed whenever it is
selected.
The function number is used to position the function
button. PowerPlatform allows you to define up to 75
buttons at a time. PowerPlatform then starts
displaying them in the function area of it's window.
How many function buttons will display on each row
and how many rows will display depends on the size
of the PowerPlatform window. As you reduce and
enlarge the window, the function buttons are
adjusted. It you skip function numbers that space is
left empty, thus you can space the function buttons
as desired. It's probably a good idea to group the
functions together logically and leave spaces
between groups to delineate them. Remember that you
can redefine the function buttons at any time using
an ARexx EXEC.
The function label can be up to 8 characters long.
The label cannot contain spaces. Powerplatform will
automatically center the label in the function
button image.
The command is the program that will be executed
whenever the function button is selected. You code
the command exactly as if you were entering it on
the command line except that you use the special
PowerPlatform place markers, &SF and &TF to position
the source and target files respectively. For
example supposing you were defining the copy
command. You might specify the command as:
Copy &SF to &TF
When you select the function PowerPlatform will then
issue this command and substitute the currently
selected source file for the &SF and the currently
selected target file for the &TF. There are two
other place markers that you can specify. &SD
instructs PowerPlatform to specify the current
source device name. You might use this place marker
when constructing a format command as format only
takes a device name as input. &SP instructs
PowerPlatform to insert the current source path at
this point in the command. You can also specify &TD
and &TP of course.
Normally when you select multiple source directory
files, PowerPlatform invokes the specified command
multiple times, passing a different source file name
every time. Sometimes however the program might want
all the selected files as input. In this case
specify &SA instead of &SF. An example of using &SA
might be an IFF viewer. You would probably not want
to invoke the viewer once for each file as most
PowerPlatform 1.0 Page 20
viewers allow you to specify multiple files on the
command line. There is one potential problem with
selecting multiple files, the command line can get
quite long. Most programs cannot handle command
lines that exceed 255 characters. If this happens
PowerPlatform displays an error requester.
Specify ARexx, CLI or WB so that PowerPlatform knows
how to invoke the specified program.
PowerPlatform will change the current directory
before executing the command if required. You can
specify CDSource or CDTarget and PowerPlatform will
use it's current source or target directory. If you
specify CDPath PowerPlatform will strip off the path
from the command name and make that the current
directory.
SwitchWB and ToWB options are only applicable if you
are running PowerPlatform on a custom screen. You
can safely include them even if you are running on
the WorkBench, they just have no effect. Many
programs open a window on the WorkBench when they
start up. If PowerPlatform is running on a custom
screen you must manually switch to the WorkBench
screen to see the window. SwitchWB automatically
switches to the WorkBench screen for you and
switches back when the program finishes. ToWB
switches to the WorkBench screen and stays there.
You have to manually switch back to the
PowerPlatform screen.
The Confirm option is designed to be used with
potentially destructive commands. It displays an
"are you sure" requester prior to executing the
command. You then have the option of executing the
command or cancelling it.
Some commands can quite happily execute in the
background which is how PowerPlatform normally
executes commands. But sometimes the command will
need additional input or it might be important to
see the output of a command. The DefineConsole
command can be used to define up to 10 different
consoles. These can be all different sizes. You can
then use the Console= parameter to reference one of
your predefined consoles. PowerPlatform will open
the console and direct all command input and output
to it. PowerPlatform automatically closes the
console when the program terminates.
When constructing the command PowerPlatform normally
wraps the selected file names in double quotes. This
is required if the file name contains special
characters such as spaces. Unfortunately some
programs cannot handle these quotes. Specify the
NoQuote option and PowerPlatform will not add quotes
PowerPlatform 1.0 Page 21
to the file name.
When you click on a function button, PowerPlatform
checks to see if you have selected any files in the
source directory. It will then execute the specified
command once for every selected file, or once with
all files passed as input if you specify the &SA
place marker. However if you have not selected any
files PowerPlatform does not execute the command.
This normally makes sense, you can't copy a file
unless you select one. However there are some cases
where it is useful to execute a program even when no
file has been selected. If you specify the NoSelect
option PowerPlatform will always execute the command
at least once.
When PowerPlatform executes a command it normally
waits for the command to complete before it will
process the next command. If you specify the Run
option, PowerPlatform will execute the command as a
separate task and not wait for it to complete. This
is the same as using the AmigaDOS run command.
If you specify the Sleep option, PowerPlatform will
display the standard Amiga busy mouse pointer until
the command completes.
The SourceRefresh and TargetRefresh options instruct
PowerPlatform to reread the source and or target
directories when the command completes. You would
normally specify this when you execute a file
manipulation command such as copy or delete.
Use the Stack= option to specify a stack size for
the command. Most programs will state in their
documentation if they need more than the standard
4000 byte stack. If your default stack size is
insufficient use this option to enlarge it. The
Stack= option is only for the current command, it
does not permanently change your stack size.
DefineItem [item label] [item command]
[ARexx | _C_L_I | WB}
{CDPath | CDSource | CDTarget}
{Console= Key= Stack=}
PowerPlatform allows you to specify five menus to
add to the existing PowerPlatform menu bar. You
start by using the DefineMenu command to define the
new menu and follow that with DefineItem commands to
define each item in that menu.
You must specify the item label and the command to
be executed when the menu item is selected. Refer to
the DefineFunction command for an explanation of the
valid options. The DefineFunction section also
PowerPlatform 1.0 Page 22
discusses how to format the command line. The
DefineItem command line is the same except that you
cannot specify the PowerPlatform place markers. No
selected files are passed to commands executed from
the menu bar.
The one option not covered in the DefineFunction
discussion. is the Key= option. You can specify a
standard Amiga command key alternative for the menu
item. For example if you specified Key=A then you
could execute the command by pressing the right
Amiga and A keys together. Consult your Amiga
documentation for more information.
DefineMenu [menu label]
PowerPlatform allows you to specify five menus to
add to the existing PowerPlatform menu bar. You
start by using the DefineMenu command to define the
new menu and follow that with DefineItem commands to
define each item in that menu.
You must specify the menu label.
You can define menus in your profile only. Menus
cannot be redefined.
DisplayBeep
The DisplayBeep command will flash the screen. It
can be used at any time but normally it would be
used to signal an error or exceptional condition.
Message [message text]
This command is used from within an ARexx EXEC to
display a message. If the EXEC is running in a
console window then you can obviously display the
message there using the standard ARexx say command.
But if you have no console you can use this command
to display a one line message in the PowerPlatform
title bar. You can use the Beep and DisplayBeep
commands, if required, to draw attention to the
message.
Options {Name Time MM/DD/YY DD/MM/YY YY/MM/DD _B_y_t_e_s Blocks}
{ _W_o_r_k_B_e_n_c_h HiRes Interlace}
The first set of options control the PowerPlatform
directory display. By default PowerPlatform displays
the file name followed by the file size in bytes.
You can change it to the file creation date,
creation time, size in blocks or name only.
PowerPlatform 1.0 Page 23
The second group of options control how
PowerPlatform opens it's window. If workbench is
specified PowerPlatform opens a full sized window on
a HiRes WorkBench or a half height window on an
interlaced WorkBench.
If you specify HiRes, PowerPlatform opens a Hires
custom screen. Interlace instructs PowerPlatform to
open an interlaced custom screen.
QueryPort
PowerPlatform opens an ARexx port called APP<n>,
where <n> is the PowerPlatform iteration number. If
you are only running PowerPlatform once the port
name is APP1, the second time it is invoked it's
APP2 etc. If you ever need to know the current port
name in an ARexx EXEC you can use this command.
You must specify the ARexx options results command
as PowerPlatform returns the port name as a result
string. See your ARexx documentation for more
information.
QuerySource
Use this command to find out the current
PowerPlatform source directory. You can often get
this by stripping of the path from any filename
passed to the EXEC. You can use this command when
there was no file name passed.
You must specify the ARexx options results command
as PowerPlatform returns the source directory as a
result string. See your ARexx documentation for
more information.
QueryTarget
Use this command to find out the current
PowerPlatform target directory. You can often get
this by stripping of the path from any filename
passed to the EXEC. You can use this command when
there was no command name passed.
You must specify the ARexx options results command
as PowerPlatform returns the target directory as a
result string. See your ARexx documentation for
more information.
ReDrawFunctions
This command will redraw all the function buttons.
PowerPlatform 1.0 Page 24
It is designed to be used when you are changing the
function button definitions. PowerPlatform does not
redraw the buttons as you define them. Once you have
defined all your buttons issue this command once to
refresh the display.
Reset
This command will deselect any selected files or
subdirectories in the active directory.
TagAll
If the source directory is active the TagAll command
will select all the files and subdirectories
displayed. This command has no effect if the target
directory is active.
PowerPlatform 1.0 Page 25
__PP__oo__ww__ee__rr__PP__ll__aa__tt__ff__oo__rr__mm____RR__ee__gg__ii__ss__tt__rr__aa__tt__ii__oo__nn
PowerPlatform is not free, it is shareware. You may use this
version of the program for 30 days. After the 30 days you should
either delete it or register it.
Registration is just $25. When you register you will receive the
latest version on the program on disk. The only difference between
the registered and shareware versions is that you will not see the
shareware requester when PowerPlatform starts up using the registered
version.
PowerPlatform is fully supported and will be enhanced on a
regular basis. As a registered user you will be notified of new
versions of the program. Please register PowerPlatform and support a
unique software distribution method. How many times have you
purchased commercial software and then left it sitting on the shelf
because it did not meet your needs or did not function as advertised.
You can try out PowerPlatform free for 30 days and without any kind
of obligation. If you don't like it dump it. If you continue to use
it, please register it by filling out the following form and mailing
it with your check.
PowerPlatform 1.0 Page 26
Mail to: Martin C. Warnett
2407 25th Avenue
San Francisco
CA 94116.
Name: _______________________________________________________________
Street: _______________________________________________________________
City: __________________________________ State:__ Zip: _____-____
Country: __________________________________
Number of Copies: ___ at $25 each (U.S. Funds) Total $___.__
BIX User ID: ____________________ (Optional)
Compuserve ID: ____________________ (Optional)
If you prefer I can send you your registered copy of PowerPlatform via
BIX mail. (BIX subscribers only, not available via Compuserve). Be sure
to include you BIX ID above and check below.
_____ YES, please send my registered copy via BIX mail.
Table of Contents
Introduction................................................. 2
PowerPlatform Installation................................... 3
Using PowerPlatform.......................................... 4
PowerPlatform Directory and Function Areas................ 4
The PowerPlatform Disk Information Area................... 6
The PowerPlatform Menu Bar................................ 7
PowerPlatform Configuration.................................. 8
Advanced PowerPlatform Configuration......................... 13
Writing your own PowerPlatform EXEC's........................ 14
PowerPlatform Command Reference.............................. 15
Beep...................................................... 16
CDSource.................................................. 16
CDTarget.................................................. 16
ClearFunctions............................................ 16
DefineColor............................................... 17
DefineConsole............................................. 17
DefineDevice.............................................. 17
DefineExt................................................. 18
DefineFunction............................................ 18
DefineItem................................................ 21
DefineMenu................................................ 22
DisplayBeep............................................... 22
Message................................................... 22
Options................................................... 22
QueryPort................................................. 23
QuerySource............................................... 23
QueryTarget............................................... 23
ReDrawFunctions........................................... 23
Reset..................................................... 24
TagAll.................................................... 24
PowerPlatform Registration................................... 25